I am Oriol and I am one of the programmers of the team.
At the beginning of this project it was decided to pick the engine that my colleague Víctor Segura and I had developed for the Game Engines subject. The engine is called Alien Engine, that we developed in a previous subject: Game Engines. As I was the main programer of the engine, my first task in the first few weeks was to intorduce to my programers team the engine so they could code fast, I was like a programer support.
Once everyone was placed, I started improving the engine and I also took part in the gameplay (wagonnetes)
In the base code that we forked I had already implemented a C++ hot reload but it had just the basics, so I implemented new features to this system:
The hot reload allows the user to have the game running in the engine and change scripts and after the user compiles (Cntrl + B) the engine will detect it and will free the old dll (also will delete all old components scripts in use) and will load the new dll and refresh all scripts. Once this finishes, the engine now has the new code running.
One of the things I implemented is the multi scening because the designers wanted this feature in order to work more than one person at the same time in the same scene.
Another thing that we needed in order to make the Wagon scene was the bezier curve that the wagon is going to follow.
After making the curves, I started making the gameplay of the wagon, the main mechanics using the bezier curve
After a lot of iterations, the final result is:
As our scenes are quite big, I implemented a thread to load almost all the scene while in the main thread shows a loading screen.
Moreover, I took part in another things such as: